perm filename TPRINT.IL[TIM,LSP]1  blob 
sn#679566 filedate 1982-09-23 generic text, type C, neo UTF8
 
COMMENT ā   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	 BENCHMARK TO PRINT AND READ TO THE TERMINAL
C00004 ENDMK
Cā;
;;; BENCHMARK TO PRINT AND READ TO THE TERMINAL
(DECLARE (LOCALVARS . T)
	 (SPECVARS TEST-ATOMS TEST-PATTERN))
(RPAQQ TEST-ATOMS (ABC1 CDE2 EFG3 GHI4 IJK5 KLM6 MNO7 OPQ8 QRS9
			STU0 UVW1 WXY2 XYZ3 123A 234B 345C 456D 
			567D 678E 789F 890G))
(SETQ TEST-PATTERN (INIT 6. 6. TEST-ATOMS))
(DEFINEQ
  (INIT
   (LAMBDA (M N ATOMS) 
     ((LAMBDA (ATOMS) 
	((LAMBDA (G0011) 
	   (PROG (A) 
		 (SETQ A G0011)
	    LOOP (COND ((NULL (CDR A)) (RETURN (RPLACD A ATOMS))))
		 ((LAMBDA (G0011) (SETQ A G0011) (GO LOOP)) (CDR A))))
	 ATOMS)
	(INIT1 M N ATOMS))
      (SUBST NIL NIL ATOMS)))))
(DEFINEQ
  (INIT1
   (LAMBDA (M N ATOMS) 
     (COND
      ((IEQP M 0) (PROG1 (CAR ATOMS) (SETQ ATOMS (CDR ATOMS))))
      (T ((LAMBDA (G0012 G0013) 
	    (PROG (I A) 
		  (PROGN (SETQ I G0012) (SETQ A G0013))
	     LOOP (COND ((ILESSP I 1) (RETURN A)))
		  (SETQ A (CONS (PROG1 (CAR ATOMS)
				       (SETQ ATOMS (CDR ATOMS)))
				A))
		  (SETQ A (CONS (INIT1 (IDIFFERENCE M 1) N ATOMS) A))
		  ((LAMBDA (G0012) (SETQ I G0012) (GO LOOP))
		   (IDIFFERENCE I 2))))
	  N
	  NIL))))))
(TIMER TIMIT (PRINT TEST-PATTERN))